#include <iostream>
#include <bits/stdc++.h>

using namespace std;
typedef struct person
{
    int no;
    int time;
    friend bool operator < (const person &p1,const person &p2)
    {
        if(p1.time == p2.time)//如果两个人的打饭时间相同，则原来排在前面的，还是在前面,即 no小的优先级高
        {
            return p1.no > p2.no;
        }
        else
        {
            return p1.time > p2.time; //时间短的优先级高
        }
    }
}P;

//优先队列
int main()
{
    int n,i,x,time=0,total=0;
    priority_queue<person> p;
    person s;
    cin >> n;
    for(i=1;i<=n;i++)
    {
        cin >> x;
        person t = {i, x};
        p.push(t);
    }
    for(i=1;i<n;i++)
    {
        s = p.top();
        time += s.time;
        total += time;
        cout << s.no << " ";
        p.pop();
    }
    s = p.top(); //等待时间不需要加最后一个人的时间
    cout << s.no << endl;
    printf("%.2f\n",1.0*total/n);
    return 0;
}
